﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace FBWMS
{
    public partial class F_COM_Color : Form
    {
        ////////////////////////////////////////////////////////////////////////////
        //
        //初期処理
        //
        ////////////////////////////////////////////////////////////////////////////
        public F_COM_Color()
        {
            try
            {
                //ログ書込み
                G_CommonClassSystem.G_System_SetLog(G_CommonDefine.LogMode.ProcStart, "F_COM_Color初期処理開始", "F_COM_Color");

                //初期処理
                InitializeComponent();

                //色コンボボックス生成

                DataSet ds = new DataSet();

                ds.Tables.Add();

                ds.Tables[0].Columns.Add();
                ds.Tables[0].Columns.Add();

                ds.Tables[0].Rows.Add();
                ds.Tables[0].Rows.Add();
                ds.Tables[0].Rows.Add();
                ds.Tables[0].Rows.Add();
                ds.Tables[0].Rows.Add();
                ds.Tables[0].Rows.Add();

                ds.Tables[0].Rows[0][0] = "0";
                ds.Tables[0].Rows[0][1] = "厚色";
                ds.Tables[0].Rows[1][0] = "1";
                ds.Tables[0].Rows[1][1] = "和色";
                ds.Tables[0].Rows[2][0] = "2";
                ds.Tables[0].Rows[2][1] = "洋色";
                ds.Tables[0].Rows[3][0] = "3";
                ds.Tables[0].Rows[3][1] = "パステルカラー";
                ds.Tables[0].Rows[4][0] = "4";
                ds.Tables[0].Rows[4][1] = "ビビットカラー";
                ds.Tables[0].Rows[5][0] = "5";
                ds.Tables[0].Rows[5][1] = "Web216色";

                if (!G_CommonClassControl.G_Control_SetData_ComboBox(this.cmb_Color, ds, 1, 0))
                {
                    MessageBox.Show("コンボボックスの設定に失敗しました。");
                    return;
                }                

                //ログ書込み
                G_CommonClassSystem.G_System_SetLog(G_CommonDefine.LogMode.ProcEnd, "F_COM_Color初期処理終了", "F_COM_Color");
            }
            catch (Exception err)
            {
                //ログ書込み
                G_CommonClassSystem.G_System_SetLog(G_CommonDefine.LogMode.Error, "F_COM_Color初期処理エラー" + err.Message, "F_COM_Color");

                //エラーメッセージ表示
                MessageBox.Show("F_COM_Color初期処理エラー" + err.Message, "エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }        

        #region イベントハンドラ ***********************************************************

        ////////////////////////////////////////////////////////////////////////////
        //
        //コンボボックス選択時処理
        //
        ////////////////////////////////////////////////////////////////////////////
        private void cmb_Color_SelectedIndexChanged(object sender, EventArgs e)
        {
            try
            {
                //ログ書込み
                G_CommonClassSystem.G_System_SetLog(G_CommonDefine.LogMode.ProcStart, "cmb_Color_SelectedIndexChanged処理開始", "cmb_Color_SelectedIndexChanged");

                //サブフォームデータ取得
                this.uSP_PC_F_COM_Color_DataSelectTableAdapter.Fill(this.ds_F_COM_Color.USP_PC_F_COM_Color_DataSelect, this.cmb_Color.SelectedValue.ToString());

                for (int i = 0; i < this.ds_F_COM_Color.USP_PC_F_COM_Color_DataSelect.Rows.Count; i++)
                {
                    string str_Color_CD = this.ds_F_COM_Color.USP_PC_F_COM_Color_DataSelect[i]["Color_CD"].ToString();
                    //this.mr_F_COM_Color.MRows[i][1, 0].BackColor = System.Drawing.ColorTranslator.FromHtml(str_Color_CD);
                }

                //ログ書込み
                G_CommonClassSystem.G_System_SetLog(G_CommonDefine.LogMode.ProcEnd, "cmb_Color_SelectedIndexChanged処理終了", "cmb_Color_SelectedIndexChanged");
            }
            catch (Exception err)
            {
                //ログ書込み
                G_CommonClassSystem.G_System_SetLog(G_CommonDefine.LogMode.Error, "cmb_Color_SelectedIndexChanged処理エラー" + err.Message, "cmb_Color_SelectedIndexChanged");

                //エラーメッセージ表示
                MessageBox.Show("cmb_Color_SelectedIndexChanged処理エラー" + err.Message, "エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        
        ////////////////////////////////////////////////////////////////////////////
        //
        //サブフォームセルクリック時処理
        //
        ////////////////////////////////////////////////////////////////////////////
        //private void mr_F_COM_Color_CellClick(object sender, GrapeCity.Win.ElTabelle.MClickEventArgs e)
        //{
        //    try
        //    {
        //        //ログ書込み
        //        G_CommonClassSystem.G_System_SetLog(G_CommonDefine.LogMode.ProcStart, "mr_F_COM_Color_CellClick処理開始", "mr_F_COM_Color_CellClick");

        //        if (e.Position.Column.Equals(0))
        //        {
        //            int int_Row = this.mr_F_COM_Color.ActiveSheet.ActiveRowIndex;

        //            G_CommonDefine.G_Target_Color = this.ds_F_COM_Color.USP_PC_F_COM_Color_DataSelect[int_Row]["Color_CD"].ToString();

        //            this.Close();
        //        }

        //        //ログ書込み
        //        G_CommonClassSystem.G_System_SetLog(G_CommonDefine.LogMode.ProcEnd, "mr_F_COM_Color_CellClick処理終了", "mr_F_COM_Color_CellClick");
        //    }
        //    catch (Exception err)
        //    {
        //        //ログ書込み
        //        G_CommonClassSystem.G_System_SetLog(G_CommonDefine.LogMode.Error, "mr_F_COM_Color_CellClick処理エラー" + err.Message, "mr_F_COM_Color_CellClick");

        //        //エラーメッセージ表示
        //        MessageBox.Show("mr_F_COM_Color_CellClick処理エラー" + err.Message, "エラー", MessageBoxButtons.OK, MessageBoxIcon.Error);
        //    }
        //}

        ////////////////////////////////////////////////////////////////////////////
        //
        //サブフォームセルダブルクリック時処理
        //
        ////////////////////////////////////////////////////////////////////////////
        //private void mr_F_COM_Color_CellDoubleClick(object sender, GrapeCity.Win.ElTabelle.MClickEventArgs e)
        //{
        //    int int_Current = this.mr_F_COM_Color.ActiveSheet.ActiveRowIndex + 1;
        //    int int_Total = this.mr_F_COM_Color.ActiveSheet.Rows.Count;

        //    MessageBox.Show(string.Format("現在のレコード : {0} / レコード総数 : {1}", int_Current, int_Total));
        //}

        #endregion *************************************************************************
        
        #region フォーム共通処理 ***********************************************************

        ////////////////////////////////////////////////////////////////////////////
        //フォームKeyDown時処理
        //(エンターを押した際に次のコントロールに移動する。)
        //(フォームの『KeyPreview』を『true』にすること)
        ////////////////////////////////////////////////////////////////////////////
        private void F_COM_Color_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                if (!e.Control)
                {
                    this.SelectNextControl(this.ActiveControl, !e.Shift, true, true, true);
                }
            }
        }        

        #endregion *************************************************************************
    }
}